import {QueryPage} from "@/api/common/type.ts";
// 设备核价明细项
export interface DeviceDetailItem {
  id?: number;
  pricingId?: number; // 设备核价ID
  materialId?: number; // 物料ID
  materialCode?: string; // 物料编码
  materialName?: string; // 物料名称
  unit?: string; // 单位
  unitId?: number; // 单位ID
  specification?: string; // 规格
  materialType?: string; // 材质
  length?: string; // 长度
  price?: number; // 单价
  quantity?: number; // 数量
  coefficient?: number; // 系数
  totalPrice?: number; // 总价 = 单价 * 数量 * 系数
  nonStandard?: string; // 非标
  remark?: string; // 备注
}

// 设备核价方案
export interface DevicePricingPlan {
  id?: number;
  projectId?: number; // 项目ID
  projectName?: string; // 项目名称
  type?: string; // 设备类别
  sumPrice?: number; // 合计金额
  activate?: number; // 状态：1-生效，0-失效
  createTime?: string; // 创建时间
  updateTime?: string; // 更新时间
  createId?: number;   // 创建人ID
  createName?: string; // 创建人姓名
  updateId?: number;   // 更新人ID
  updateName?: string; // 更新人姓名
  remark?: string; // 备注
  detailItems?: DeviceDetailItem[]; // 设备核价明细列表
}

// 设备核价查询参数
export interface DevicePricingQuery extends QueryPage {
  projectId?: number; // 项目ID
  type?: string; // 设备类别
  activate?: number; // 状态
}

// 创建设备核价请求
export interface DevicePricingCreateDTO {
  projectId: number; // 项目ID
  type: string; // 设备类别
  sumPrice?: number; // 合计金额
  remark?: string; // 备注
  detailItems: DeviceDetailItem[]; // 设备核价明细列表
}

// 更新设备核价请求
export interface DevicePricingUpdateDTO {
  id: number;
  projectId: number; // 项目ID
  type: string; // 设备类别
  sumPrice?: number; // 合计金额
  remark?: string; // 备注
  detailItems: DeviceDetailItem[]; // 设备核价明细列表
}

// 批量复制请求
export interface DevicePricingBatchCopyParam {
  sourceIds: number[]  // 源ID列表
  targetProjectId: number  // 目标项目ID
} 